function getQueryObj(url) {
  let index = url.indexOf('?');
  let lastIndex = url.indexOf('#');
  let search = url.slice(index + 1, lastIndex);
  let searchArr = search.split('&');
  const obj = {};
  for (let item of searchArr) {
    let [key, value] = item.split('=');
    // 难点在于 0 以及如何将 ‘0’转为0  
    value = isNaN(value) ? value : parseInt(value);
    value = value !== undefined ? value : '';
    obj[key] = value;
  }
  return obj;
}

const url = 'https://sample.com/?a=0&b=2&c=xx&d#hash';
console.log(getQueryObj(url));
console.log(isNaN('xx')); // true
console.log(isNaN('0')); // false

// 实现一个函数，可以对url中的query部分做拆解，返回key-value形式的object。
// 返回一个key-value形式的object
// const url = 'http://sample.com/?a=0&b=2&c=xx&d#hash';
// function getQueryObj(url) {
//   // 这里编写实现
// }

// console.log(getQueryObj(url)); //{a:0.b:2,c:'xx,d:''}
